﻿using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace Data.Tables
{
    [Table("UserPageAccess")]
    public class UserPageAccess : UserPageAccessFields
    { }

    public class UserPageAccessFields
    {
        [Key]
        public int ID { get; set; }

        public string UserName { get; set; }

        public int PageID { get; set; }
    }

    public class UserAccessModel
    {

        #region Administration

        [Display(Name = "Administration")]
        public bool HasAdministrationAccess { get; set; }

        [Display(Name = "Users")]
        public bool HasUsersAccess { get; set; }

        [Display(Name = "Employment Types")]
        public bool HasEmploymentTypesAccess { get; set; }

        [Display(Name = "Holiday Types")]
        public bool HasHolidayTypesAccess { get; set; }

        [Display(Name = "Recurring Holidays")]
        public bool HasRecurringHolidaysAccess { get; set; }

        [Display(Name = "Work Locations")]
        public bool HasWorkLocationsAccess { get; set; }

        #endregion

        #region Masterfile

        [Display(Name = "Masterfile")]
        public bool HasMasterFilesAccess { get; set; }

        [Display(Name = "Holidays")]
        public bool HasHolidaysAccess { get; set; }

        [Display(Name = "Employees")]
        public bool HasEmployeesAccess { get; set; }

        [Display(Name = "Employee Contracts")]
        public bool HasEmployeeContractsAccess { get; set; }

        #endregion

        #region Workspace

        [Display(Name = "Workspace")]
        public bool HasWorkspaceAccess { get; set; }

        [Display(Name = "Payroll")]
        public bool HasPayrollAccess { get; set; }

        #endregion

        #region Reports

        [Display(Name = "Reports")]
        public bool HasReportsAccess { get; set; }

        #endregion

    }
}